package com.maben.fdfs.config;

import org.csource.fastdfs.*;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.Resource;
/**
 * fastDFS文件上传的配置
 */
@Configuration
public class FastDFSConfig {

    @Value("classpath:fdfs_client.conf")
    private Resource ccs;
 
    @Bean
    public StorageClient initClient(){
        try{
            ClientGlobal.init(ccs.getFilename());
            // 2、创建一个 TrackerClient 对象。直接 new 一个。
            TrackerClient trackerClient = new TrackerClient();
            // 3、使用 TrackerClient 对象创建连接，获得一个 TrackerServer 对象。
            TrackerServer trackerServer = trackerClient.getConnection();
            // 4、创建一个 StorageServer 的引用，值为 null
            StorageServer storageServer = null;
            // 5、创建一个 StorageClient 对象，需要两个参数 TrackerServer 对象、StorageServer 的引用
            StorageClient storageClient = new StorageClient(trackerServer, storageServer);
            return storageClient;
        }catch (Exception e){
            e.printStackTrace();
            return null;
        }
    }

}

